/* 获取最大数和最小数之间的随机数 */
function getRandom(min, max) {
    return Math.floor(Math.random() * (max - min + 1)) + min;
}

/* 求1任意两个数之间整数的和 */
function getSum(num1, num2) {
    var sum = 0;
    for (var i = num1; i <= num2; i++) {
        sum += i;
    }
    console.log(sum);
}
/* 利用函数求数组最大值 */
function getArrMax(arr) {
    var max = arr[0];
    for (let index = 0; index < arr.length; index++) {
        if (max < arr[index]) {
            max = arr[index];
        }
    }
    return max;
}
/* 利用函数翻转数组 */
function reverse(arr) {
    var newArr = [];
    for (var i = arr.length - 1; i >= 0; i--) {
        newArr[newArr.length] = arr[i];
    }
    return newArr;
}

/* 利用函数求任意数的最大值 */
function getMax() {
    var max = arguments[0]
    for (let i = 0; i < arguments.length; i++) {
        if (max < arguments[i]) {
            max = arguments[i];
        }
    }
    return max;
}
/* 封装函数，冒泡排序 */
function sort(arr) {
    var temp;
    for (let i = 0; i < arr.length; i++) {
        for (let j = i + 1; j < arr.length; j++) { //老师教的方法
            if (arr[j] < arr[i]) {
                temp = arr[i];
                arr[i] = arr[j];
                arr[j] = temp
            }

        }
    }
    return arr;
}
/* 封装函数，冒泡排序方法2 */
function sort1(arr) {
    var te;
    for (let i = 0; i < arr.length; i++) {
        for (let j = 0; j < arr.length - i; j++) { //视频的方法
            if (arr[i] < arr[j]) {
                te = arr[j];
                arr[j] = arr[i];
                arr[i] = te;
            }
        }
    }
    return arr;
}
/* 封装函数，实现数组去重，并且排序 */
//核心算法∶我们遍历旧数组，然后拿着旧数组元素去查询新数组，如果该元素在新数组里面没有出现过，我们就添加，否则不添加。
function doWeight(arr) {
    var newArr = [];
    for (let i = 0; i < arr.length; i++) {
        if (newArr.indexOf(arr[i]) == -1) {
            newArr.push(arr[i]);
        }
    }
    var a;
    for (let i = 0; i < newArr.length; i++) {
        for (let j = 0; j < newArr.length - i; j++) {
            if (newArr[j] > newArr[j + 1]) {
                a = newArr[j];
                newArr[j] = newArr[j + 1];
                newArr[j + 1] = a;
            }
        }
    }
    return newArr;
}
/* 封装函数，判断闰年 */
function isRunYear(year) {
    var falg = false;
    if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
        falg = true;
    }
    return falg;
}
/* 动画函数 */
function animate(obj, target, callback) {
    clearInterval(obj.timer);
    obj.timer = setInterval(() => {
        var step = (target - obj.offsetLeft) / 10;
        step = step > 0 ? Math.ceil(step) : Math.floor(step);
        if (obj.offsetLeft == target) {
            clearInterval(obj.timer);
            callback && callback();
        }
        obj.style.left = obj.offsetLeft + step + 'px';
    }, 15);
}
/* 输入总毫秒数，返回日期对象 */
function formatDate(shijianchuo) {
    //补零函数
    function add0(m) {
        return m < 10 ? '0' + m : m
    }
    var time = new Date(shijianchuo);
    var y = time.getFullYear();
    var m = time.getMonth() + 1;
    var d = time.getDate();
    var h = time.getHours();
    var mm = time.getMinutes();
    var s = time.getSeconds();
    return y + '-' + add0(m) + '-' + add0(d) + ' ' + add0(h) + ':' + add0(mm) + ':' + add0(s);
}
// console.log(formatDate(1610699266972));//2021-01-15 16:27:46

/* 随机16进制颜色 */
function randomColor() {
    return '#' + Math.random().toString(16).substring(2, 8);
}
// console.log(randomColor());

/* 随机rgba颜色 */
function rgbaColor() {
    var r = Math.floor(Math.random() * 155 + 100);
    var g = Math.floor(Math.random() * 155 + 100);
    var b = Math.floor(Math.random() * 155 + 100);
    var a = Math.random(Math.random() * 10) / 10;
    return 'rgba(' + r + ',' + g + ',' + b + ',' + a + ')'
}
/* 判断构造函数实例对象中是否存在该属性 */
function isProtoAttr(obj, attrName) { //对象  //属性名
    let is = (!obj.hasOwnProperty(attrName)) && attrName in obj;
    if (is) {
        return true;
    } else if (obj.hasOwnProperty(attrName)) {
        delete obj[attrName];
        return attrName in obj
    }
}
/* 实现⼀个具体的功能,写⼀个函数,接受⼀个字符串参数.比如?id=5&name=yyx219 然后我需要传入⼀个
ID,返回出⼀个5,传入⼀个name就给我⼀个yyx219 */
// function getUrlName() {
//     // ⽤来存放健值对的空对像 
//     var obj = {};
//     // 去除我们的?号 
//     var url = location.search.length > 0 ? location.search.substring(1) : '';
//     // 按&字符串去拆分数组 
//     var items = url.split('&');
//     var  
//     for (var i = 0; i < items.length; i++) {
//         var item = items[i].split('=');
//         console.log(item[0], item[1])
//         args[item[0]] = item[1]
//     }
//     return obj;
// }
// console.log(getUrlName().id, getUrlName().name);